home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 7 / Apprentice-Release7.iso / Environments / PowerLisp 2.01 / PowerLisp 2.01 ƒ / Library / stdlib.lisp < prev    next >
Lisp/Scheme  |  1996-05-17  |  1KB  |  59 lines

  1. ;;;
  2. ;;;        PowerLisp 2.0
  3. ;;;        Copyright © 1996 Roger Corman.  All rights reserved.
  4. ;;;
  5. ;
  6. ;        Lisp standard functions and macros to be loaded at startup.
  7. ;
  8.  
  9. (defun copyright ()
  10.     "Copyright © 1995 Roger Corman. All rights reserved.")
  11.  
  12. (make-package :compiler)
  13.  
  14. ;; this is only needed to load the standard library,
  15. ;; which then rolls this functionality into 'load'.
  16. (defun load-binary (filename)
  17.     (let*
  18.         ((loaded 0)
  19.          (stream (open filename :direction :input))
  20.          (*package* *package*)            ;; bind these to themselves
  21.          (*readtable* *readtable*)
  22.          (*standard-output* *standard-output*))
  23.          
  24.         (do* ((expr t) (symbol-table (make-array 500)))
  25.             ((null expr)(close stream) loaded)
  26.             (setq expr (%read-code-from-stream stream symbol-table))
  27.             (if expr
  28.                 (let ((result (funcall expr)))
  29.                     (setq loaded (+ 1 loaded)))))))
  30.  
  31. (if cl::%powerpc-native 
  32.     (setq *cl-compiled-library* ":library:cl.ppcl")
  33.     (setq *cl-compiled-library* ":library:cl.fasl"))
  34.  
  35. (if (probe-file *cl-compiled-library*)
  36.     (progn 
  37.         (load-binary *cl-compiled-library*)
  38.         (print "Standard Library (binary) loaded."))
  39.     (if (probe-file ":library:cl.lisp")
  40.         (progn
  41.             (load ":library:cl.lisp")
  42.             (print "Standard Library loaded."))
  43.         (print "Could not find Standard Library.")))
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.